Cloud-based computing architectures have opened new possibilities for rapid deployment of on-line services. Typically, a cloud-based architecture deploys a set of hosted resources such as processors, operating systems, software, routers and other components that may be combined together to form one or more virtual machines. A user may instantiate one or more virtual machines on the hosted resources from a cloud management system to conduct specific tasks or applications. As an example, a user may want to set up a web site by instantiating a virtual web server from the cloud management system. As another example, in addition to the web site, the user may want to set up an email server in which case she/he may do so by instantiating a virtual email server from the cloud management system. Amongst many benefits, the cloud-based architecture allows flexibility by instantiating virtual machines on as-needed basis, either for a long-term period or a short-term period, without having to carry the burden of installing, maintaining and/or operating physical servers and/or other hardware equipment.
In a cloud computing environment, cloud computing resources are typically provided through dedicated servers associated with an entity, such as, for example, Amazon™, through its service Amazon Elastic Compute Cloud™ (Amazon EC2™). In addition to providing control to virtual machines instantiated on dedicated and/or proprietary servers of the entity, such service may allow scaling capacity, both up and down. Even though flexible, such service relies on dedicated servers associated with the entity (e.g., Amazon) which results in the user being limited to host her/his virtual machines on the entity's dedicated servers and may not select hosting her/his virtual machines on cloud computing resources independent from the entity and/or at least not directly controlled and/or owned by the entity.
Under some approaches, such as the one detailed in U.S. Patent Publication 2010/0131948, more flexibility is allowed by providing a cloud environment on-demand. Such approach allows creating cloud computing environment, on-demand, from non-dedicated cloud controlled resources or third-party resources. Even though such approach includes a cloud management system configured to communicate with non-dedicated resources and/or third-party controlled resources, improvements may still be desirable, in particular, improvements aiming at, amongst other things, (i) managing establishment of a connection between a cloud computing resource of the federation of cloud computing resources and a user and/or (ii) generating cloud federation usage data indicative of a usage of multiple cloud computing resources of the federation of cloud computing resources by the user.